package com.myyun.yun.utils;

/**
 * @author CC小天才
 * @website www.flyskill.cn
 * @date 2021/9/11 18:00
 **/

public class JsonData {

    //业务状态码 0成功 1等待处理 -1失败
    private Integer code;
    //业务数据
    private Object data;
    //信息描述
    private String msg;

    public JsonData(Integer code) {
        this.code = code;
    }

    public JsonData(Integer code, Object data, String msg) {
        this.code = code;
        this.data = data;
        this.msg = msg;
    }

    public JsonData(Integer code, Object data) {
        this.code = code;
        this.data = data;
    }

    public JsonData(Integer code, String msg) {
        this.code = code;
        this.msg = msg;
    }

    /**
     *
     * 成功返回状态码，不返回数据
     * @return
     */
    public static JsonData Success(){
        return new JsonData(0);
    }


    /**
     *
     * 成功返回状态码0和data数据
     * @param data
     * @return
     */
    public static JsonData Success(Object data){
        return new JsonData(0,data,null);
    }

    /**
     * 成功返回状态码0和data数据和成功信息提示
     * @param data
     * @param msg
     * @return
     */
    public static JsonData Success(Object data,String msg){
        return new JsonData(0,data,msg);
    }


    /**
     *
     * 错误只返回错误状态码 -1
     * @return
     */
    public static JsonData Error(){
        return new JsonData(-1);
    }

    /**
     *
     * 错误返回状态 -1 错误信息提示msg
     * @param msg
     * @return
     */
    public static JsonData Error(String msg){
        return new JsonData(-1,msg);
    }

    public static JsonData Error(Integer code,String msg){
        return new JsonData(code,msg);
    }





    public Integer getCode() {
        return code;
    }

    public void setCode(Integer code) {
        this.code = code;
    }

    public Object getData() {
        return data;
    }

    public void setData(Object data) {
        this.data = data;
    }

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }
}
